﻿using System;

namespace Program20
{
    class Program
    {
        static void Main(string[] args)
        {
            //1.{患者：“大夫，我咳嗽得很重。”     大夫：“你多大年记？”     患者：“七十五岁。”     
            //大夫：“二十岁咳嗽吗”患者：“不咳嗽。”     大夫：“四十岁时咳嗽吗？”     
            //患者：“也不咳嗽。”     大夫：“那现在不咳嗽，还要等到什么时咳嗽？}
            //找出第1次出现咳嗽的位置是第几个字符

            //2.将字符串"  hello      world,你  好 世界   !    "
            //两端空格去掉，并且将其中的所有其他空格都替换成一个空格，
            //输出结果为："hello world,你 好 世界 !"。

            //3.存储用户输入的姓名，回车存储；只要用户不输入‘quit’就可以一直输入。
            //输入quit后打印出所有刚才输入的姓名，统计个数

            //4.请将字符串数组{ "中国", "美国", "巴西", "澳大利亚", "加拿大" }中的内容反转。然后输出反转后的数组。不能用数组的Reverse()方法
            var names = new string[] { "中国", "美国", "巴西", "澳大利亚", "加拿大" };
            Console.WriteLine("交换前:");
            foreach(var item in names)
            {
                Console.Write(item + " ");
            }
            for(int i = 0; i < names.Length / 2; i++)
            {
                string tmp = names[i];
                names[i] = names[names.Length - 1 - i];
                names[names.Length - 1 - i] = tmp;
            }
            Console.WriteLine();
            Console.WriteLine("交换后：");
            foreach(var item in names)
            {
                Console.Write(item + " ");
            }

            //5. 用方法来实现：计算两个数的最大值。 扩展：计算任意多个数间的最大值
            Console.ReadKey();
            Console.WriteLine(GetMax(1, 4, 2, 43, 199, 65));
            //选做题：输入要打开的文件所在的路径，输入要打开的文件的名字，按文件类型打开文件或读取文件内容
            //文件处理，进程，工厂模式
            
        }
        public static int GetMax(params int[] nums)
        {
            int max = nums[0];
            for (int i = 0; i < nums.Length; i++)
            {
                if (nums[i] > max)
                    max = nums[i];
            }

            return max;
        }
    }
}
